Traditionally, personal computers included operating systems, applications, and user settings for a single user. Personal computers were generally both used and managed by their owners. However, many organizations are now using virtualization, remote access and/or clouds of computing resources to fulfill their computing needs. Desktop virtualization systems, such as cloud computing environments, generally allow for the operating systems, applications, and user settings of multiple users to be included on a single physical machine. Desktop virtualization technology allows multiple instances of an operating system to be kept separate, so the activities of one user do not affect the experiences of other users. Desktop virtualization systems allow for computers owned by a cloud service provider (CSP) to be managed by the CSP but used by customers (or tenants) of the CSP.
In some instances, the CSP may create a set of server farms so that each server farm includes a separate and isolated hosting infrastructure to serve one or more tenants of the CSP. Individual server farms may host multiple tenants and may be generally configured to support the virtualization computing needs of those tenants. Other server farms may be used exclusively by one tenant, for example, a large scale or highly secure customer, and may be specifically configured based on the needs of that single tenant. However, the creation of server farms can be a time consuming and tedious process.